package com.tom.joke.bank;

// 银行业务员
public class Salesman implements IBank {
    // 持有真正客户的引用
    private IBank man;
    public Salesman(IBank man) {
        this.man = man;
    }

    @Override
    public void applyBank() {
        if (man!=null) {
            //...
        }
        System.out.println("先做一些流程");
        man.applyBank(); // 调用我们自己的方法(设置密码)
        System.out.println("业务办理完毕");
    }
    @Override
    public void lostBank() {
        System.out.println("先做一些流程");
        System.out.println("银行卡丢失了，补办");
        System.out.println("业务办理完毕");
    }

    public static void main(String[] args) {
        Man man = new Man();
        Salesman salesMan = new Salesman(man); // 代理持有对象。对象叫个代理。
        salesMan.applyBank(); // 办卡
    }
}
